Listin Gambas2

Création d'un programme en Gambas2 : un répertoire téléphonique pas à pas

Origine : http://listingambas.blogspot.com/2011/06/anexo-3-introduccion-al-gambas-tipo-de.html


Annexe 3: Introduction à Gambas. Variables et types de données.

Remarque: combinaison de plusieurs articles publiés sur le web. Auteurs : Alfonso Martinez-Garcia 


Une variable est un élément qui est utilisé pour stocker différents types de données, tels que chiffres, lettres ou les deux. La valeur stockée dans cette variable peut changer à tout moment pendant l'exécution d'un programme, contrairement à la constante où la valeur est maintenue pendant  toute l'éxécution du programme.
Fondamentalement, il ya deux endroits où vous pouvez déclarer des variables en Gambas, selon l'usage auquel vous voulez destiner la variable. Elle peut être déclarée dans un sous-programme ou une fonction, cette dernière déclaration désigne une variable qui sera uniquement utilisée dans cette subroutine ou  fonction. Si vous la déclarez dans la partie initiale, soit dans un module soit dans une classe, elle sera disponible  dans toutes ses fonctions ou sous-routines de ce fichier.


Pour utiliser des variables en Gambas, elles doivent être déclarées. Pour cela, il existe plusieurs manières.

Déclaration des variables locales

[DIM]  Identificateur AS  TypeDeDonnée
Avec cette syntaxe, on déclare une variable au sein d'une procédure ou d'une fonction, cette variable est accessible uniquement au sein de la fonction ou la procédure où elle a été déclarée.
Déclaration d'une variable "val" de type entier
    DIM Val AS integer
Déclaration d'une variable
"NAME" de type chaîne de caractères
    DIM NAME AS String
Déclaration d'un tableau
"Matrice" de trois par trois  nombres  de type "virgule flottante"
    DIM Matrice[3,3] AS Float
Déclaration d'une variable
"nObject" de type Objet
    DIM nObject AS Object

[Static] (PUBLIC | PRIVATE) Identificateur [déclaration de tableau] AS  [NEW]  TypeDeDonnée
Cette syntaxe est utilisée pour déclarer une variable globale dans une classe, la variable déclarée est accessible partout dans la classe ou le module où elle a été déclarée.
Si la déclaration est faite avec le qualificatif public, la variable sera accessible à partir d'autres classes qui font référence à un objet de la classe où la variable a été déclarée.
Si elle porte le qualificatif STATIC, la variable sera partagée par tous les objets de la classe. Si vous incluez le mot NEW, la variable est initialisée avec une nouvelle instance de la classe spécifiée par le type de donnée.

Sous-routines ou fonctions
Subroutine: Une procédure qui effectue certaines tâches, mais ne retoure aucun type de valeur. Elle est identifiée dans Gambas par le par mot clé SUB et n'a aucun RETURN.
Fonction: Une procédure qui retourne quelque chose. Elle est identifiée par le mot-clé FUNCTION et possède un RETURN.


Les types de données.
Les types de données utilisés dans Gambas sont les suivants :
Boolean: peut prendre deux valeurs true (vrai) et false (faux).
Byte: peut prendre des valeurs entières entre 0 et 255. (octet)
Short: peut prendre des valeurs entières entre -32 768 et 32 767.
Integer: peut prendre des valeurs entières entre -2147483648 et +2147483647.
Float: peut prendre des valeurs en  virgule flottante, équivalent à double en C.
Date: gère les valeurs de type date et heure. En interne la date et l'heure sont stockées au format UTC.
String: Utilisé pour stocker une chaîne. gère des valeurs qui incluent à la fois des lettres et des chiffres.
Variant:
gère n'importe quelle valeur.
object:
pour déclarer des variables qui font référence à un objet
.


Déterminer quel type de donnée est stocké dans une variable.
IsBoolean (expression): retourne TRUE si expression est un booléen
IsDate (expression): retourne TRUE si expression stocke une valeur DATE
IsFloat (expression): retourne TRUE si le type de données d'expression est un flottant
Isinteg (expression): retourne TRUE si le type de données d'expression est un entier
IsNull (expression): retourne TRUE si expression est NULL
IsNumber (expression): retourne TRUE si le type de données d'expression stocke un nombre
IsObject (expression): retourne TRUE si expression stocke un objet ou une référence null
IsShort (expression): retourne TRUE si le type de données d'expression stocke une valeur short
IsString (expression): retourne TRUE si le type de données d'expression stocke une chaîne de caractères
mais aussi ... IsByte, IsLong, IsSingle ...

Conversion des types de données
Les fonctions dont dispose Gambas pour la conversion des différents types de données:
1. CBool ​​(expression) Convertit expression en une valeur booléenne.
    Exemple CBool ​​(expression) renvera «vrai» ou «faux».
2. CShort (expression), CInt (expression), Cinteger (expression), CLONG (expression): expression devient short, int ou long.
3. CDate (expression) Convertit expression à une chaîne date / heure
4. CStr (expression) Convertit expression en une chaîne.
5. Val (expression) Convertit une chaîne en un booléen, un nombre ou une date, selon le contenu de la chaîne.
6. Str$ (expression) Convertit expression en une chaîne de caractères.